Gnus normally determines whether a group is new or not by
comparing the list of groups from the active file(s) with the
lists of subscribed and dead groups. This isn't a particularly
fast method. If gnus-check-new-newsgroups is
ask-server, Gnus will ask the server for new groups
since the last time. This is both faster and cheaper. This also
means that you can get rid of the list of killed groups
altogether, so you may set gnus-save-killed-list to
nil, which will save time both at startup, at exit,
and all over. Saves disk space, too. Why isn't this the default,
then? Unfortunately, not all servers support this command.
I bet I know what you're thinking now: How do I find out
whether my server supports ask-server? No? Good,
because I don't have a fail-safe answer. I would suggest just
setting this variable to ask-server and see whether
any new groups appear within the next few days. If any do, then
it works. If none do, then it doesn't work. I could write a
function to make Gnus guess whether the server supports
ask-server, but it would just be a guess. So I
won't. You could telnet to the server and say
HELP and see whether it lists
‘NEWGROUPS’
among the commands it understands. If it does, then it might
work. (But there are servers that lists ‘NEWGROUPS’ without supporting the
function properly.)
This variable can also be a list of select methods. If so,
Gnus will issue an ask-server command to each of the
select methods, and subscribe them (or not) using the normal
methods. This might be handy if you are monitoring a few servers
for new groups. A side effect is that startup will take much
longer, so you can meditate while waiting. Use the mantra
“dingnusdingnusdingnus” to achieve permanent
bliss.